package day03;

//此类是用于验证逻辑运算符的测试demo
public class LogicDemo {
    public static void main(String[] args) {
        /*
        逻辑运算符：
        &: 逻辑与，多个条件同时成立，最终的结果才算成立
        |: 逻辑或，多个条件只要有一个条件成立，最终的结果就是成立
        !: 逻辑非，取反操作
        逻辑运算符的运算结果 是 boolean类型
        */
        int a = 5;
        int b = 10;
        int c = 5;
        boolean r1 = a < c & b > c;     //false
        System.out.println(r1);
        boolean r2 = a <= c & b > c;    //true
        System.out.println(r2);

        boolean r3 = a < c |  b > c;    //true
        System.out.println(r3);

        System.out.println(!(a == c));  //false，对关系运算结果取反
        System.out.println("---------------");
        //&&：短路与，当第一个条件为false的时候，直接短路，&&后边的条件不再执行
        //||：短路或，当第一个条件为true的时候，直接短路，||后边的条件不再执行
        int x = 5;
        int y = 10;
        int z = 5;
        boolean b1 = x < z  && y++ > 10;
        System.out.println(b1);     //false
        System.out.println(y);

//        boolean b2 = x >= z && y++ > 10;
//        System.out.println(b2);     //false

        boolean b3 = x <= z || ++y > 10;
        System.out.println(b3);     //true
        System.out.println(y);      //10
    }
}
